#include<iostream>
#include<cstdio>
#include<map>
using namespace std;
long long n,a[1001],b[1001],c[1001],d[1001],e[1001];
char x;
char p[1001][5];
map<int,map<int,map<int,map<int,map<int,bool> > > > >bz;
map<int,map<int,map<int,map<int,map<int,int> > > > >bh;
int main()
{
	freopen("network.in","r",stdin);
	freopen("network.out","w",stdout);
	cin>>n;
	for (int i=1;i<=n;i++)
	{
		if (i==1)
		cin>>x;
		if (x=='S')
		{
			cin>>x;
			cin>>x;
			cin>>x;
			cin>>x;
			cin>>x;
			bool flag=false,k=false;
//			if (i==1)
//			{
				cin>>x;
//			}
			a[i]=x-'0';
			while (cin>>x)
			{
				if (flag==false&&x=='0')
				{
					p[i][1]='E';
					p[i][2]='R';
					p[i][3]='R';
					flag=true;
					k=true;
				}
				if (x>='0'&&x<='9')
				{
					flag=true;
					a[i]*=10;
					a[i]+=x-'0';
				}
				else
				{
					break;
				}
			}
			if (k==false)
			{
				flag=true;
				while (cin>>x)
				{
					if (flag==false&&x=='0')
					{
						p[i][1]='E';
						p[i][2]='R';
						p[i][3]='R';
						flag=true;
						k=true;
					}
					if (x>='0'&&x<='9')
					{
						flag=true;
						b[i]*=10;
						b[i]+=x-'0';
					}
					else
					{
						break;
					}
				}
				if (k==false)
				{
					flag=true;
					while (cin>>x)
					{
						if (flag==false&&x=='0')
						{
							p[i][1]='E';
							p[i][2]='R';
							p[i][3]='R';
							flag=true;
							k=true;
						}
						if (x>='0'&&x<='9')
						{
							flag=true;
							c[i]*=10;
							c[i]+=x-'0';
						}
						else
						{
							break;
						}
					}
					if (k==false)
					{
						flag=true;
						while (cin>>x)
						{
							if (flag==false&&x=='0')
							{
								p[i][1]='E';
								p[i][2]='R';
								p[i][3]='R';
								flag=true;
								k=true;
							}
							if (x>='0'&&x<='9')
							{
								flag=true;
								d[i]*=10;
								d[i]+=x-'0';
							}
							else
							{
								break;
							}
						}
						if (k==false)
						{
							flag=true;
							while (cin>>x)
							{
								if (flag==false&&x=='0')
								{
									p[i][1]='E';
									p[i][2]='R';
									p[i][3]='R';
									flag=true;
									k=true;
								}
								if (x>='0'&&x<='9')
								{
									flag=true;
									e[i]*=10;
									e[i]+=x-'0';
								}
								else
								{
									break;
								}
							}
						}
						else
						{
							char p[101];
							scanf("%s",p);
						}
					}
					else
					{
						char p[101];
						scanf("%s",p);
					}
				}
				else
				{
					char p[101];
					scanf("%s",p);
				}
			}
			else
			{
				char p[101];
				scanf("%s",p);
			}
			if (k==false)
			{
				if (a[i]<256&&b[i]<256&&c[i]<256&&d[i]<256&&e[i]<65536)
				{
					
					if (bz[a[i]][b[i]][c[i]][d[i]][e[i]]==false)
					{
						bz[a[i]][b[i]][c[i]][d[i]][e[i]]=true;
						bh[a[i]][b[i]][c[i]][d[i]][e[i]]=i;
						p[i][1]='O';
						p[i][2]='K';
					}
					else
					{
						p[i][1]='F';
						p[i][2]='A';
						p[i][3]='I';
						p[i][4]='L';
//						cout<<"FAIL"<<endl;
					}
				}
				else
				{
					p[i][1]='E';
					p[i][2]='R';
					p[i][3]='R';
//					cout<<"ERR"<<endl;
				}
			}
		}
		else
		{
			cin>>x>>x>>x>>x>>x;
			bool flag=false,k=false;
			cin>>x;
			a[i]=x-'0';
			while (cin>>x)
			{
				if (flag==false&&x=='0')
				{
					p[i][1]='E';
					p[i][2]='R';
					p[i][3]='R';
					flag=true;
					k=true;
				}
				if (x>='0'&&x<='9')
				{
					flag=true;
					a[i]*=10;
					a[i]+=x-'0';
				}
				else
				{
					break;
				}
			}
			if (k==false)
			{
				flag=true;
				while (cin>>x)
				{
					if (flag==false&&x=='0')
					{
						p[i][1]='E';
						p[i][2]='R';
						p[i][3]='R';
						flag=true;
						k=true;
					}
					if (x>='0'&&x<='9')
					{
						flag=true;
						b[i]*=10;
						b[i]+=x-'0';
					}
					else
					{
						break;
					}
				}
				if (k==false)
				{
					flag=true;
					while (cin>>x)
					{
						if (flag==false&&x=='0')
						{
							p[i][1]='E';
							p[i][2]='R';
							p[i][3]='R';
							flag=true;
							k=true;
						}
						if (x>='0'&&x<='9')
						{
							flag=true;
							c[i]*=10;
							c[i]+=x-'0';
						}
						else
						{
							break;
						}
					}
					if (k==false)
					{
						flag=true;
						while (cin>>x)
						{
							if (flag==false&&x=='0')
							{
								p[i][1]='E';
								p[i][2]='R';
								p[i][3]='R';
								flag=true;
								k=true;
							}
							if (x>='0'&&x<='9')
							{
								flag=true;
								d[i]*=10;
								d[i]+=x-'0';
							}
							else
							{
								break;
							}
						}
						if (k==false)
						{
							flag=true;
							while (cin>>x)
							{
								if (flag==false&&x=='0')
								{
									p[i][1]='E';
									p[i][2]='R';
									p[i][3]='R';
									flag=true;
									k=true;
								}
								if (x>='0'&&x<='9')
								{
									flag=true;
									e[i]*=10;
									e[i]+=x-'0';
								}
								else
								{
									break;
								}
							}
						}
						else
						{
							char p[101];
							scanf("%s",p);
						}
					}
					else
					{
						char p[101];
						scanf("%s",p);
					}
				}
				else
				{
					char p[101];
					scanf("%s",p);
				}
			}
			else
			{
				char p[101];
				scanf("%s",p);
			}
			if (k==false)
			{
				p[i][1]='N';
			}
		}
	}
	for (int i=1;i<=n;i++)
	{
		if (p[i][1]=='N')
		{
			if (bz[a[i]][b[i]][c[i]][d[i]][e[i]]==true)
			{
				cout<<bh[a[i]][b[i]][c[i]][d[i]][e[i]]<<endl;
			}
			else
			{
				if (a[i]<256&&b[i]<256&&c[i]<256&&d[i]<256&&e[i]<65536)
				cout<<"FAIL"<<endl;
				else
				{
					cout<<"ERR"<<endl;
				}
			}
		}
		else
		{
			for (int j=1;j<=4;j++)
			{
				if (p[i][j]<='Z'&&p[i][j]>='A')
				{
					cout<<p[i][j];
				}
			}
			cout<<endl;
		}
	}
	return 0;
}
